/**
 * Copyright(c) kyle.
 */
package org.example.general.reflection;

import lombok.AllArgsConstructor;
import lombok.Data;

import java.lang.annotation.Documented;

/**
 * 动物
 *
 * @author kyle
 * @version 1.00.00
 * @since [2020-09-27 08:36]
 * @updateUser [Kyle]
 * @updateRemark [说明本次修改内容]
 * @date [2020-09-27 08:36]
 */
@Data
@AllArgsConstructor
@TableKyle(name="Animal")
public abstract class Animal implements Runnable {
    private static int color;
    protected static int color1;
    public static int color2;

    static {
        color = 1;
    }
    @FieldKyle(colName = "f_name",type = "varchar",length = 50)
    private String name;

    private long id;
    @FieldKyle(colName = "f_age",type = "int")
    private int age;

    Animal(
    ) {
        color = 2;
    }

    @Override
    public void run() {
        System.out.println("Animal run");
//        int a = 1 / 0;
    }

    abstract public void methodWithParams(String name);

    private void haha(){
        System.out.println("haha");
    }
}
